package com.vca.common.vo;

import com.vca.common.model.user.User;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;

/**
 * @author chenbing
 * @date 2022/11/24   15:29
 */
@Data
public class GenerateHelpVo {
    private User user;
    private BigDecimal priceId;
    private Integer addressId;
    private Long scheduled;
    private String scheduledLingStartTime;
    private String scheduledLingEndTime;
    private String scheduledLingDate;
    private Long mainId;
    private String name;
    private String coverImage;
    private Integer languageId;
    private Integer type;
    private String info;

    @Data
    public static class Info{
        @ApiModelProperty(value = "课程/套课/讲座/展览名称")
        private String name;

        @ApiModelProperty(value = "价格")
        private BigDecimal price;

        @ApiModelProperty(value = "购买数量")
        private Integer buyCount = 1;

        @ApiModelProperty(value = "课程/套课/讲座/展览ID")
        private Long mainId;

        @ApiModelProperty(value = "封面")
        private String coverImage;

        @Data
        public static class Scheduling{
            @ApiModelProperty(value = "排课ID")
            private Long scheduleId;

            @ApiModelProperty(value = "排课日期")
            private String schedulingDate;

            @ApiModelProperty(value = "排课当天开始时间")
            private String schedulingStartTime;

            @ApiModelProperty(value = "排课当天结束时间")
            private String schedulingEndTime;

            @ApiModelProperty(value = "上课语言")
            private String language;
        }

        @ApiModelProperty(value = "课程排期")
        private List<GenerateHelpVo.Info.Scheduling> schedulings;

        @ApiModelProperty(value = "展览开始日期")
        private String startTime;

        @ApiModelProperty(value = "展览结束日期")
        private String endTime;

        @ApiModelProperty(value = "课程类型")
        private String typeName;

        @ApiModelProperty(value = "课程类型标签颜色")
        private String typeLabelColor;

        @ApiModelProperty(value = "课程地址")
        private HashMap<String, Object> courseAddress;
    }
}
